Computer-readable storage medium having stored thereon display control program, display control system, display control apparatus, and display control method

ABSTRACT

First, a plurality of selection objects having at least one part thereof displayed on a display area of a display device are moved relative to the display area, based on an output signal outputted from an input device. Then, when an end-located selection object among the moved plurality of selection objects reaches a predetermined position of the display area, an object that is different from the plurality of selection objects is displayed on the display area. The object moves relative to the display area based on an output signal outputted from the input device.

CROSS REFERENCE TO RELATED APPLICATION

The disclosure of Japanese Patent Application No. 2010-205845, filed onSep. 14, 2010, is incorporated herein by reference.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to a display control process conductedwhen displaying display-contents such as a selection object that is tobe selected by a user and a content that is to be browsed by a user, andmore specifically relates to a process conducted when scrolling theselection object and content.

Description of the Background Art

An information processing terminal for browsing contents that do not fitwithin one screen is conventionally known. For example, in a state whereone part of a content having a size larger than a screen is displayed onthe screen, a mobile phone disclosed in Japanese Laid-Open PatentPublication No. 2000-66801 enables moving the content by an operation ona numerical keypad of the mobile phone. Additionally, this mobile phonedisplays information indicating a position of the currently displayedcontent with respect to all the contents in an area outside the displayarea of the content. For example, a ratio of an amount of contents thathave been already displayed at present to the total amount of displaycontents is represented as a percentage. Therefore, when the display hasmoved to an end of the content, the user can understand that the displayhas moved to an end of the content by seeing information on a percentagedisplay.

With the mobile phone described in the Japanese Laid-Open PatentPublication No. 2000-66801, it is necessary to estimate where a contenthas been moved by using information displayed at an area outside thedisplay area of the content. However, the user will be paying attentionto the content when browsing the content. Therefore, in order to see theinformation at an area outside the display area of the content, the userwill take his or her sight off the content for a moment to confirm theinformation at an area outside the display area of the content. As aresult, if the user is performing an operation to move the content whilepaying attention to the content, even after reaching an end of thecontent, the user will try to further move the content, therebygenerating a futile operation. In other words, the user will conduct afutile operation by trying to further move the content even afterreaching an end of the content, and then, shift his or her sight to theinformation displayed outside the content area to confirm theinformation and recognize they have reached an end of the content.Therefore, it has been difficult to intuitively understand reaching anend of the content.

SUMMARY OF THE INVENTION

Therefore, an object of the present invention is to provide acomputer-readable storage medium having stored thereon a display controlprogram which can improve usability for a user by allowing the user tointuitively understand reaching an end of a display object such as acontent and the like.

In order to achieve the above described object, the present inventionhas adopted the following configurations.

A first aspect is a computer-readable storage medium having storedthereon a display control program executed by a computer of a displaycontrol apparatus which displays, on a display device, a selectionobject selected in accordance with an operation by a user, the displaycontrol program causing the computer to operate as first movementcontrol means, display control means, and second movement control means.The first movement control means moves, relative to a display area ofthe display device, a plurality of selection objects having at least onepart thereof displayed on the display area, based on an output signaloutputted from an input device. The display control means displays, onthe display area, an object that is different from the selectionobjects, when, among the plurality of selection objects moved by thefirst movement control means, an end-located selection object reaches apredetermined position of the display area. The second movement controlmeans moves, relative to the display area, the object displayed by thedisplay control means, based on an output signal outputted from theinput device.

The first aspect allows the user to intuitively understand that theselection objects have been moved to an end, without the need ofnarrowing the area in order to display the selection objects; therebyenabling a further increase of usability for the user.

In a second aspect based on the first aspect, the computer is furthercaused to operate as object erasing means for erasing, from the displayarea, the object displayed by the display control means, when the inputdevice stops outputting an output signal.

The second aspect allows the user to easily understand contents of theselection objects as soon as an operation (for example, operation ofscrolling) for moving the plurality of selection objects has beenstopped, thereby enabling increase of usability.

In a third aspect based on the first aspect, the second movement controlmeans moves the object after the first movement control means stopsmoving the selection objects.

The third aspect allows the user to intuitively understand that theselection objects cannot be moved further.

In a fourth aspect based on the first aspect, the second movementcontrol means moves the object in a moving direction determined based onan output signal outputted from the input device.

In a fifth aspect based on the fourth aspect, the computer is furthercaused to operate as object erasing means for erasing the object fromthe display area by moving the object in a direction opposite to themoving direction, when the input device stops outputting an outputsignal.

The fourth and fifth aspects allow the user to understand that theselection objects cannot be moved further, by moving the object inaccordance with an operation of moving a pointed position and erasingthe object when the operation is stopped.

In a sixth aspect based on the fifth aspect, the second movement controlmeans displays the object so as to emerge from an end of the displayarea from a direction opposite of the moving direction determined basedon an output signal outputted from the input device. In addition, theobject erasing means erases the object by moving the object toward theend of the display area.

The sixth aspect allows to relieve a sense of discomfort for the user,since the object emerges and moves in a natural manner, associated withthe operation of moving the pointed position.

In a seventh aspect based on the first aspect, the display control meansdisplays the object in a manner such that the object is superimposed onfront surfaces of the selection objects.

The seventh aspect allows the user to intuitively understand that theselection objects cannot be moved further.

In an eighth aspect based on the seventh aspect, the display controlmeans displays a semi-transparent object as the object in a manner suchthat the semi-transparent object is superimposed on front surfaces ofthe selection objects.

The eighth aspect allows the user to understand contents of theselection objects and intuitively understand that the selection objectshave been moved to an end, by using the semi-transparent object andallowing the user to understand that the selection objects have beenmoved to an end.

In a ninth aspect based on the eighth aspect, the display control meanschanges the transparency of the object in accordance with the movementof the object.

In a tenth aspect based on the ninth aspect, the display control meanschanges the transparency of the object such that the transparencybecomes lower as a movement distance of the object becomes larger.

The ninth and tenth aspects allow the user to intuitively understandthat the selection objects have moved to an end, since the transparencyof the object changes.

In an eleventh aspect based on the first aspect, the display controlmeans changes a shape of the object in accordance with a movement of theobject.

In a twelfth aspect based on the first aspect, the display control meanschanges a size of the object in accordance with a movement of theobject.

The eleventh and twelfth aspects allow the user to intuitivelyunderstand that the selection objects have moved to an end.

A thirteenth aspect is a display control system which displays, on adisplay device, a selection object selected in accordance with anoperation by a user, the display control system including first movementcontrol means, display control means, and second movement control means.The first movement control means moves, relative to a display area ofthe display device, a plurality of selection objects having at least onepart thereof displayed on the display area, based on an output signaloutputted from an input device. The display control means displays, onthe display area, an object that is different from the selectionobjects, when, among the plurality of selection objects moved by thefirst movement control means, an end-located selection object reaches apredetermined position of the display area. The second movement controlmeans moves, relative to the display area, the object displayed by thedisplay control means, based on an output signal outputted from theinput device.

A fourteenth aspect is a display control apparatus which displays, on adisplay device, a selection object selected in accordance with anoperation by a user, the display control apparatus including firstmovement control means, display control means, and second movementcontrol means. The first movement control means moves, relative to adisplay area of the display device, a plurality of selection objectshaving at least one part thereof displayed on the display area, based onan output signal outputted from an input device. The display controlmeans displays, on the display area, an object that is different fromthe selection objects, when, among the plurality of selection objectsmoved by the first movement control means, an end-located selectionobject reaches a predetermined position of the display area. The secondmovement control means moves, relative to the display area, the objectdisplayed by the display control means, based on an output signaloutputted from the input device.

A fifteenth aspect is a display control method for displaying, on adisplay device, a selection object selected in accordance with anoperation by a user, the display control method including a firstmovement control step, a display control step, and a second movementcontrol step. The first movement control step is a step of moving aplurality of selection objects having at least one part thereofdisplayed on a display area of the display device, based on an outputsignal outputted from an input device. The display control step is astep of displaying, on the display area, an object that is differentfrom the selection objects, when, among the plurality of selectionobjects moved at the first movement control step, an end-locatedselection object reaches a predetermined position of the display area.The second movement control step is a step of moving, relative to thedisplay area, the object displayed by the display control step, based onan output signal outputted from the input device.

A sixteenth aspect is a computer-readable storage medium having storedthereon a display control program executed by a computer of a displaycontrol apparatus which displays, on a display device, a content to bebrowsed by a user, the display control program causing the computer tooperate as first movement control means, display control means, andsecond movement control means. The first movement control means moves,relative to a display area of the display device, a content having atleast one part thereof displayed on the display area, based on an outputsignal outputted from an input device. The display control meansdisplays, on the display area, an object that is different from thecontent, when an end of the content, which is moved by the firstmovement control means, reaches a predetermined position of the displayarea. The second movement control means moves, relative to the displayarea, the object displayed by the display control means, based on anoutput signal outputted from the input device.

A seventeenth aspect is a computer-readable storage medium having storedthereon a display control program executed by a computer of a displaycontrol apparatus which displays, on a display device, a content to bebrowsed by a user, the display control program causing the computer tooperate as first movement control means, display control means, andsecond movement control means. The first movement control means moves,relative to a display area of the display device, a plurality ofcontents having at least one part thereof displayed on the display area,based on an output signal outputted from an input device. The displaycontrol means displays, on the display area, an object that is differentfrom the plurality of contents displayed on the display area, when,among the plurality of contents moved by the first movement controlmeans, an end-located content reaches a predetermined position of thedisplay area. The second movement control means moves, relative to thedisplay area, the object displayed by the display control means, basedon an output signal outputted from the input device.

The thirteenth to seventeenth aspects can obtain the same advantageouseffect as that of the first aspect.

The present invention allows an user to intuitively understand moving toan end of a plurality of selection object, when the user is performingan operation of move the plurality of selection objects (for example, anoperation of scrolling).

These and other objects, features, aspects and advantages of the presentinvention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an exterior view of a game apparatus 1 according to anembodiment of the present invention;

FIG. 2 is a block diagram of the game apparatus 1 according to anembodiment of the present invention;

FIG. 3 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 4 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 5 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 6 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 7 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 8 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 9 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment;

FIG. 10 illustrational figure show a memory map of a main memory 32;

FIG. 11 is a flowchart showing a flow of a menu process executed in thegame apparatus 1;

FIG. 12 is a flowchart showing a flow of a menu process executed in thegame apparatus 1;

FIG. 13 is a drawing for explaining a concept of a content arrangement;

FIG. 14 is a flowchart showing details of a scroll limit representationprocess indicated at step S12 of FIG. 11;

FIG. 15 is a figure showing an initial arrangement position of anotification object;

FIG. 16 is a display example of the notification object;

FIG. 17 is a display example of the notification object;

FIG. 18 is a flowchart showing details of an inertia touch-off processindicated at step S22 of FIG. 12;

FIG. 19 is a display example of the notification object; and

FIG. 20 is a display example of the notification object.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, an embodiment of the present invention will be describedwith reference to the drawings. Note that the present invention is notlimited to this embodiment.

FIG. 1 is an exterior view of a game apparatus 1 for executing a menuprocessing program of the present invention. Here, a hand-held gameapparatus is shown as one example the game apparatus 1. In FIG. 1, thegame apparatus 1 is a foldable hand-held game apparatus in an openedstate. The game apparatus 1 is configured to have such a size as to beheld by a user with one hand or both hands in the opened state.

The game apparatus 1 includes a lower housing 11 and an upper housing21. The lower housing 11 and the upper housing 21 are connected to eachother so as to be capable of being opened or closed (foldable). In theexample of FIG. 1, the lower housing 11 and the upper housing 21 areeach formed in a plate-like shape of a horizontally long rectangle, androtatably connected to each other at long side portions thereof.Normally, the user uses the game apparatus 1 in the opened state. Whennot using the game apparatus 1, the user keeps the game apparatus 1 in aclosed state. In the example shown in FIG. 1, in addition to the closedstate and the opened state, the game apparatus 1 is capable ofmaintaining an angle between the lower housing 11 and the upper housing21 at any angle ranging between the closed state and the opened state byfrictional force generated at a connection portion and the like. Inother words, the upper housing 21 can be stationary at any angle withrespect to the lower housing 11.

In the lower housing 11, a lower LCD (Liquid Crystal Display) 12 isprovided. The lower LCD 12 has a horizontally long shape, and is locatedsuch that a long side thereof corresponds to a long side direction ofthe lower housing 11. Note that although an LCD is used as a displaydevice built-in the game apparatus 1 in the present embodiment, anyother display devices such as a display device using an EL (ElectraLuminescence) and the like may be used. In addition, the game apparatus1 can use a display device of any resolution. Although details will bedescribed below, the lower LCD 12 is used mainly for displaying an imagetaken by an inner camera 23 or an outer camera 25 in real time.

In the lower housing 11, operation buttons 14A to 14K and a touch panel13 are provided as input devices. As shown in FIG. 1, among theoperation buttons 14A to 14K, the direction input button 14A, theoperation button 14B, the operation button 14C, the operation button14D, the operation button 14E, the power button 14F, the start button14G, and the select button 14H are provided on an inner main surface ofthe lower housing 11 which is located inside when the upper housing 21and the lower housing 11 are folded. The direction input button 14A isused, for example, for a selection operation and the like. The operationbuttons 14B to 14E are used, for example, for a determination operation,a cancellation operation, and the like. The power button 14F is used forturning on or off the power of the game apparatus 1. In the exampleshown in FIG. 1, the direction input button 14A and the power button 14Fare provided on the inner main surface of the lower housing 11 and onone of a left side and a right side (on the left side in FIG. 1) of thelower LCD 12 provided in the vicinity of the center of the inner mainsurface of the lower housing 11. Further, the operation buttons 14B to14E, the start button 14G, and the select button 14H are provided on theinner main surface of the lower housing 11 and on the other of the leftside and the right side (on the right side in FIG. 1) of the lower LCD12. The direction input button 14A, the operation buttons 14B to 14E,the start button 14G, and the select button 14H are used for performingvarious operations on the game apparatus 1.

Note that the operation buttons 14I to 14K are omitted in FIG. 1. Forexample, the L button 14I is provided at a left end of an upper surfaceof the lower housing 11, and the R button 14J is provided at a right endof the upper surface of the lower housing 11. The L button 14I and the Rbutton 14J are used, for example, for performing a photographinginstruction operation (shutter operation) on the game apparatus 1. Inaddition, the volume button 14K is provided on a left side surface ofthe lower housing 11. The volume button 14K is used for adjusting volumeof loudspeakers of the game apparatus 1.

The game apparatus 1 further includes the touch panel 13 as anotherinput device in addition to the operation buttons 14A to 14K. The touchpanel 13 is mounted on the lower LCD 12 so as to cover the screen of thelower LCD 12. In the present embodiment, the touch panel 13 is, forexample, a resistive film type touch panel. However, the touch panel 13is not limited to the resistive film type, but any press-type touchpanel may be used. The touch panel 13 used in the present embodiment hasthe same resolution (detection accuracy) as that of the lower LCD 12.However, the resolution of the touch panel 13 and that of the lower LCD12 may not necessarily be the same with each other. In a right sidesurface of the lower housing 11, an insertion opening (indicated by adashed line in FIG. 1) is provided. The insertion opening is capable ofaccommodating a touch pen 27 which is used for performing an operationon the touch panel 13. Although an input onto the touch panel 13 isusually performed using the touch pen 27, in addition to the touch pen27, a finger of the user can be used for operating the touch panel 13.

In the right side surface of the lower housing 11, an insertion opening(indicated by a two-dot chain line in FIG. 1) is formed foraccommodating a memory card 28. Inside the insertion opening, aconnector (not shown) is provided for electrically connecting the gameapparatus 1 to the memory card 28. The memory card 28 is, for example,an SD (Secure Digital) memory card, and detachably mounted on theconnector. The memory card 28 is used, for example, for storing an imagetaken by the game apparatus 1, and loading an image generated by anotherapparatus into the game apparatus 1.

Further, in the upper surface of the lower housing 11, an insertionopening (indicated by a chain line in FIG. 1) is formed foraccommodating a cartridge 29. Inside the insertion opening, a connector(not shown) is provided for electrically connecting the game apparatus 1to the cartridge 29. The cartridge 29 is a storage medium storing a gameprogram and the like, and detachably mounted in the insertion openingprovided in the lower housing 11.

Three LEDs 15A to 15C are mounted on a left side part of the connectionportion where the lower housing 11 and the upper housing 21 areconnected to each other. Three LEDs 15A to 15C are mounted on a leftside part of the connection portion where the lower housing 11 and theupper housing 21 are connected to each other. The game apparatus 1 iscapable of performing wireless communication with another apparatus, andthe first LED 15A is lit up while the power of the game apparatus 1 isON. The second LED 15B is lit up while the game apparatus 1 is beingcharged. The third LED 15C is lit up while wireless communication isestablished. Thus, by the three LEDs 15A to 15C, a state of ON/OFF ofthe power of the game apparatus 1, a state of charge of the gameapparatus 1, and a state of communication establishment of the gameapparatus 1 can be notified to the user.

Meanwhile, in the upper housing 21, an upper LCD 22 is provided. Theupper LCD 22 has a horizontally long shape, and is located such that along side direction thereof corresponds to a long side direction of theupper housing 21. In a similar manner to that of the lower LCD 12, adisplay device of another type having any resolution may be used insteadof the upper LCD 22. A touch panel may be provided so as to cover theupper LCD 22. On the upper LCD 22, for example, an operation explanationscreen for teaching the user roles of the operation buttons 14A to 14Kand the touch panel 13 is displayed.

In the upper housing 21, two cameras (the inner camera 23 and the outercamera 25) are provided. As shown in FIG. 1, the inner camera 23 ismounted in an inner main surface in the vicinity of the connectionportion of the upper housing 21. On the other hand, the outer camera 25is mounted in a surface opposite to the surface in which the innercamera 23 is mounted, namely, in an outer main surface of the upperhousing 21 (which is the surface located on the outside of the gameapparatus 1 in the closed state, and the back surface of the upperhousing 21 shown in FIG. 1). In FIG. 1, the outer camera 25 is indicatedby a dotted line. Thus, the inner camera 23 is capable of taking animage in a direction in which the inner main surface of the upperhousing 21 faces, and the outer camera 25 is capable of taking an imagein a direction opposite to an imaging direction of the inner camera 23,namely, in a direction in which the outer main surface of the upperhousing 21 faces. In other words, in the present embodiment, the twocameras 23 and 25 are provided such that the imaging directions thereofare opposite to each other. For example, the user can take an image of aview seen from the game apparatus 1 toward the user with the innercamera 23 as well as an image of a view seen from the game apparatus 1in a direction opposite to the user with the outer camera 25.

In the inner main surface in the vicinity of the connection portion, amicrophone (a microphone 42 shown in FIG. 2) is accommodated as a voiceinput device. In the inner main surface in the vicinity of theconnection portion, a microphone hole 16 is formed to allow themicrophone 42 to detect sound outside the game apparatus 1. Theaccommodating position of the microphone 42 and the position of themicrophone hole 16 are not necessarily in the connection portion. Forexample, the microphone 42 may be accommodated in the lower housing 11,and the microphone hole 16 may be formed in the lower housing 11 so asto correspond to the accommodating position of the microphone 42.

In the outer main surface of the upper housing 21, a fourth LED 26(indicated by a dashed line in FIG. 1) is mounted. The fourth LED 26 islit up at a time when photographing is performed (when the shutterbutton is pressed) with the outer camera 25. Further, the fourth LED 26is lit up while a moving picture is being taken by the outer camera 25.By the fourth LED 26, it is notified to an object person whose image istaken and people around the object person that photographing isperformed (being performed) by the game apparatus 1.

Sound holes 24 are formed in the inner main surface of the upper housing21 and on left and right sides, respectively, of the upper LCD 22provided in the vicinity of the center of the inner main surface of theupper housing 21. The loudspeakers are accommodated in the upper housing21 and at the back of the sound holes 24. The sound holes 24 are forreleasing sound from the speakers to the outside of the game apparatus 1therethrough.

As described above, the inner camera 23 and the outer camera 25 whichare components for taking an image, and the upper LCD 22 which isdisplay means for displaying, for example, an operation explanationscreen at the time of photographing are provided in the upper housing21. On the other hand, the input devices for performing an operationinput on the game apparatus 1 (the touch panel 13 and the buttons 14A to14K), and the lower LCD 12 which is display means for displaying thegame screen are provided in the lower housing 11. Accordingly, whenusing the game apparatus 1, the user can hold the lower housing 11 andperform an input on the input device while seeing a taken image (animage taken by one of the cameras) displayed on the lower LCD 12.

Next, an internal configuration of the game apparatus 1 will bedescribed with reference to FIG. 2, FIG. 2 is a block diagram showingone example of the internal configuration of the game apparatus 1.

As shown in FIG. 2, the game apparatus 1 includes electronic componentsincluding a CPU 31, a main memory 32, a memory control circuit 33, astored data memory 34, a preset data memory 35, a memory card interface(memory card I/F) 36 and a cartridge I/F 44, a wireless communicationmodule 37, a local communication module 38, a real time clock (RTC) 39,a power circuit 40, an interface circuit (I/F circuit) 41, and the like.These electronic components are mounted on an electronic circuitsubstrate and accommodated in the lower housing 11 (or may beaccommodated in the upper housing 21).

The CPU 31 is information processing means for executing a predeterminedprogram. Note that a program executed by the CPU 31 may be stored inadvance in a memory within the game apparatus 1, may be obtained fromthe memory card 28 and/or the cartridge 29, or may be obtained fromanother apparatus by means of communication with said another apparatus.For example, a program may be obtained by means of download via theInternet from a predetermined server, or may be obtained by downloadinga predetermined program stored in a stationary game apparatus throughcommunication therewith.

The main memory 32, the memory control circuit 33, and the preset datamemory 35 are connected to the CPU 31. The stored data memory 34 isconnected to the memory control circuit 33. The main memory 32 isstorage means used as a work area and a buffer area of the CPU 31. Inthe present embodiment, for example, a PSRAM (Pseudo-SRAM) is used asthe main memory 32. The stored data memory 34 is storage means forstoring a program executed by the CPU 31, data of images taken by theinner camera 23 and the outer camera 25, and the like. The stored datamemory 34 is constructed of a nonvolatile storage medium, for example, aNAND flash memory, in the present embodiment. The memory control circuit33 is a circuit for controlling reading of data from the stored datamemory 34 or writing of data to the stored data memory 34 in accordancewith an instruction from the CPU 31. The preset data memory 35 isstorage means for storing, in the game apparatus 1, data (preset data)of various parameters and the like which are set in advance, and a laterdescribed menu processing program and the like. A flash memory connectedto the CPU 31 via an SPI(Serial Peripheral Interface) bus can be used asthe preset data memory 35.

The memory card I/F 36 is connected to the CPU 31. The memory card I/F36 reads data from the memory card 28 mounted on the connector or writesdata to the memory card 28 in accordance with an instruction from theCPU 31. In the present embodiment, data of images taken by the outercamera 25 is written to the memory card 28, and image data stored in thememory card 28 is read from the memory card 28 to be stored in thestored data memory 34.

The cartridge I/F 44 is connected to the CPU 31. The cartridge I/F 44reads out data from the cartridge 29 mounted to the connector or writesdata to the cartridge 29 in accordance with an instruction from the CPU31.

The wireless communication module 37 functions to connect to a wirelessLAN device, for example, by a method conformed to the standard ofIEEE802.11.b/g. The local communication module 38 functions towirelessly communicate with a game apparatus of the same type by apredetermined communication method. The wireless communication module 37and the local communication module 38 are connected to the CPU 31. TheCPU 31 is capable of receiving data from and transmitting data toanother apparatus via the Internet using the wireless communicationmodule 37, and capable of receiving data from and transmitting data toanother game apparatus of the same type using the local communicationmodule 38.

The RTC 39 and the power circuit 40 are connected to the CPU 31. The RTC39 counts a time, and outputs the time to the CPU 31. For example, theCPU 31 is capable of calculating a current time (date) and the likebased on the time counted by the RTC 39. The power circuit 40 controlselectric power from a power supply (typically, a battery accommodated inthe lower housing 11) of the game apparatus 1 to supply the electricpower to each electronic component of the game apparatus 1.

The game apparatus 1 includes the microphone 42 and an amplifier 43. Themicrophone 42 and the amplifier 43 are connected to the I/F circuit 41.The microphone 42 detects voice produced by the user toward the gameapparatus 1, and outputs a sound signal indicating the voice to the ITcircuit 41. The amplifier 43 amplifies the sound signal from the I/Fcircuit 41, and causes the speakers (not shown) to output the soundsignal. The I/F circuit 41 is connected to the CPU 31.

The touch panel 13 is connected to the I/F circuit 41. The I/F circuit41 includes a sound control circuit for controlling the microphone 42and the amplifier 43 (the speakers), and a touch panel control circuitfor controlling the touch panel 13. The sound control circuit performsA/D conversion or D/A conversion of the sound signal, and converts thesound signal into sound data in a predetermined format. The touch panelcontrol circuit generates touch position data in a predetermined formatbased on a signal from the touch panel 13, and outputs the touchposition data to the CPU 31. For example, the touch position data isdata indicating coordinates of a position at which an input is performedon an input surface of the touch panel 13. The touch panel controlcircuit reads a signal from the touch panel 13 and generates touchposition data every predetermined period of time. The CPU 31 is capableof recognizing a position at which an input is performed on the touchpanel 13 by obtaining the touch position data.

An operation button 14 includes the above operation buttons 14A to 14K,and is connected to the CPU 31. The operation button 14 outputsoperation data indicating an input state of each of the buttons 14A to14K (whether or not each button is pressed) to the CPU 31. The CPU 31obtains the operation data from the operation button 14, and performsprocessing in accordance with an input performed onto the operationbutton 14.

The inner camera 23 and the outer camera 25 are connected to the CPU 31.Each of the inner camera 23 and the outer camera 25 takes an image inaccordance with an instruction from the CPU 31, and outputs data of thetaken image to the CPU 31. In the present embodiment, the CPU 31 givesan imaging instruction to the inner camera 23 or the outer camera 25,and the camera which has received the imaging instruction takes an imageand transmits image data to the CPU 31.

The lower LCD 12 and the upper LCD 22 are connected to the CPU 31. Eachof the lower LCD 12 and the upper LCD 22 displays an image thereon inaccordance with an instruction from the CPU 31.

Next, a general outline of a process envisioned by the presentembodiment will be described. The process of the present embodimentenvisions a situation in which a scroll object such as a content and thelike having a size that cannot be displayed in a single screen isbrowsed while being scrolled. Here, the scroll object is, for example,an electronic book content for an electronic book viewer, an electronicdocument for an electronic document viewer and the like, and a browseobject (contents such as an HTML document and a Web page, including acombination of documents and images) for various browsers such as aninterne browser (HTML browser). Also included as the scroll objectreferred here are those including a plurality of objects which are to beselected by the user and which are viewable as a list and which arebrowsed by using a scroll operation, and examples of those includethumbnails of images on an image viewer, a screen displaying apossession item listing in a game process, a screen displaying aplurality of buttons, and the like. Also categorized as the scrollobject is a content of a menu in a menu screen of the game apparatus 1(a group of contents including a plurality of contents shown as contenticons 101 described later), and the content of the menu is provided asan example for the specific process of the present embodiment in thefollowing description. Hereinafter, this scroll object will be referredto simply as a content.

When browsing total contents that cannot be displayed all on a singlescreen as described above, the user can browse all the contents byperforming an operation of scrolling the contents (hereinafter, referredto as a scroll operation).

One example of the scroll operation as described above is a so-calleddrag operation. For example, when one part of the contents is displayedon a screen with a touch panel (the lower LCD 12 in the presentembodiment), by performing touch-on to the touch panel 13 by using thetouch pen 27 and preforming a slide movement to a predetermineddirection, for example, from in the left to right direction by using thetouch pen 27, the displayed contents can be scrolled to the rightdirection. As a result, a portion of the contents desired for viewingcan be moved within a display screen (display area). Envisioned here isa case where an end of the contents of the browse object has beenreached (a case where an end of the contents is displayed in the screen)by repeatedly conducting the scroll operation by the drag operation. Inthis case, since an end of the contents has been reached, further scrolloperation will be a futile operation. In such a case, the presentembodiment will notify the user in an intuitive manner about reaching anend of the contents by performing a representation process incoordination with the scroll operation. In the following, suchrepresentation process to notify reaching of an end of the contents willbe referred to as “scroll limit representation”.

FIG. 3 is one example of a screen of the game apparatus 1 envisioned bythe present embodiment. Used as an example in the present embodiment isnot an operation mode in which a predetermined game starts up as soon asthe power is turned on, but an operation mode in which a menu screen isdisplayed first. FIG. 3 shows the menu screen displayed when the gameapparatus 1 has been started up. The menu screen shown in FIG. 3 isdisplayed on a content area 102 on the lower LCD 12. A plurality ofcontent icons 101 a to 101 d (hereinafter, may be referred to by ageneric name “content icon”) are arranged side by side in a line anddisplayed on the content area 102. The content icons respectivelycorrespond to predetermined applications (for example, a cameraapplication, an online shopping application, a game application, anapplication for configuring the game apparatus, and the like). Byperforming a tap operation on each of the icons, the user can start upan application that corresponds to a tapped icon. Note that, a cursor isdisplayed on either one of the display content icons, and, in thisstate, an application corresponding to the content icon on which thecursor is displayed may be started up by hold down, for example thebutton 14B. Here, the number of content icons is more than that capableof being displayed all on a single screen, and the content icons arearranged side by side in a line. The content icon 101 a is an icon thatis at the leftmost end of this group of content icons. Furthermore,scrolling is possible by performing the drag operation as describedabove on the content area 102 in the horizontal direction of the contentarea 102. Thus, the respective content icons 101 can be scrolled as agroup (as a group of contents). In the following, such scrolling may betermed simply as “scrolling the content area 102”.

One specific example is a case where, as shown in FIG. 4, touch-on isperformed on the content icon 101 d and a drag operation is performedtoward the right direction on the screen displaying content icons 101 cto 101 f. This will result in a state where the content area 102 isscrolled to display content icons 101 b to 101 e on the screen as shownin FIG. 5. Next, a touch-off is performed once, and then a touch-on isperformed on the content icon 101 b to perform a drag operation towardthe right direction again. As shown in FIG. 6, this will result in astate where the content icon 101 a corresponding to the leftmost end ofthe content is fully included within the screen (proximity of the leftend of the screen). Thus, this is in a state of reaching the end of thecontents as a result of the scroll operation.

Note that, in order to easily understand the example, provided as anexample is case where the content icon 101 d is touched-on; however, theabove described scrolling is also possible when a portion in the contentarea 102 other than the content icons 101 is touched-on to perform thedrag operation.

Here, in the state as shown in FIG. 6, the user moves the touch pen 27(pointed position) further toward the right direction without performinga touch-off. Thus, an operation of further scrolling the contents isperformed even though the left end of the contents has been reached. Ifsuch an operation is performed, in the present embodiment, as shown inFIG. 7 and FIG. 8, a semi-transparent notification object 121 emergesfrom the left end of the screen, which is on the opposite side of thescrolling direction of the contents, so as to be superimposed on thecontent area 102, and moves in the horizontal direction in accordancewith the movement of the touch pen 27. More specifically, if the touchpen is moved to the right direction, the notification object 121 movestoward the right (displayed as if it is drawn out from the left end ofthe screen); and if the touch pen is moved to the left direction, thenotification object 121 also moves toward the left (displayed as if itis withdrawn in the left end of the screen). On the other hand, thecontent area 102 (including each of the content icons 101) is not to bescrolled but is fixed. Therefore, by having the notification object 121to emerge when the scrolling of the contents stops, the user canintuitively understand that he or she has scrolled to an end of thecontents. Note that, in FIG. 8, a string of characters for indicating anend of the contents is also shown on the notification object 121. Then,if the user performs a touch-off in a state as shown in FIG. 8, thenotification object 121 moves so as to be withdrawn in the left end ofthe screen, and thereby results in a state as shown in FIG. 9. Thus, thenotification object 121 moves in a direction opposite to the scrollingdirection of the contents, and disappears from the screen. In thepresent embodiment, such a representation of having the notificationobject 121 to emerge and move in a state where an end of the contents isdisplayed, corresponds to the above described scroll limitrepresentation.

As described above, in the present embodiment, when an end of thecontent has been reached resulting from the scroll operation and whenfurther scroll operation is performed, the notification object 121,which is an object different from the contents, is displayed and movedin coordination with the scroll operation. As a result, the user canintuitively recognize that he or she has scrolled to an end of thecontents.

Furthermore, in the example with the scroll operation described above,only the drag operation has been provided as an example; however, otherthan this, in the present embodiment, a flick operation is also possiblefor scrolling the contents (an operation of performing a touch-on,moving a finger or the touch pen so as to lightly swipe the screen, andperforming a touch-off; in other words, performing a touch-on and thenan operation so as to flick). The result is a scroll operation havinginertia in accordance with the strength of the flick operation. Whensuch flick operation is performed, the scrolling will continue for ashort time even after the touch-off, due to inertia force that is basedon the strength of the flick operation. Note that, the scrolling stopsat the moment when an end of the contents is reached during thescrolling due to this inertia force (hereinafter, referred to as inertiascrolling). Furthermore, when the flick operation is performed in astate where an end of the contents is already displayed (refer to FIG.6), the notification object 121 emerges and moves based on the inertiaforce caused by the flick operation. In the following, such inertiascrolling and controlling by the inertia force of the notificationobject 121 are referred to as “inertia representation”.

In the following, details of various data and program used in thepresent embodiment will be described by using FIG. 10 to FIG. 18.

FIG. 10 is an illustrational figure showing a memory map of the mainmemory 32 shown in FIG. 2. In FIG. 10, the main memory 32 includes aprogram storage area 321 and a data storage area 323. Data in theprogram storage area 321 and the data storage area 323 are obtained bycopying, to the main memory 32, data previously stored in the presetdata memory 35.

The program storage area 321 stores a menu processing program 322 andthe like executed by the CPU 31.

Data such as notification object data 324, inertia representation data325, a scroll limit representation flag 326, an inertia representationflag 327, operation data 328, lastly inputted coordinates data 329,second-from-lastly inputted coordinates data 330, and the like arestored in the data storage area 323.

The notification object data 324 is data representing the notificationobject 121 used in the scroll limit representation described above.

The inertia representation data 325 is data used for a process of theinertia scrolling as described above (hereinafter, referred to asinertia representation).

The scroll limit representation flag 326 is a flag for showing whetheror not the scroll limit representation for indicating an end of thecontents when an end of the contents is displayed on the screen isconducted. When the flag is set to be ON, this indicates that the scrolllimit representation is being conducted.

The inertia representation flag 327 is a flag for indicating whether ornot the process of inertia scrolling (inertia representation) is beingexecuted. When the flag is set to be ON, this indicates being in themidst of executing the process of inertia scrolling.

The operation data 328 is data indicating an input state of each of theoperation buttons 14 a to 14K and an input state of the touch panel 13.Furthermore, when there is an input to the touch panel 13, dataindicating coordinates of the input is also included in the operationdata 328.

The lastly inputted coordinates data 329 is data indicating coordinatesof an input to the touch panel in a process in an immediately precedingframe. In the process in an immediately preceding frame, if there is noinput to the touch panel 13, the data will be empty, and if there is aninput to the touch panel 13, the coordinates of the input is stored.Therefore, by referring to the data, a change in touch position (inputcoordinates) during the drag operation and the like can be calculated,and eventually an amount of movement of the touch pen 27 can becalculated.

The second-from-lastly inputted coordinates data 330 is data indicatinginput coordinates acquired immediately before the lastly inputtedcoordinates data described above; that is, input coordinates detected ina process in a frame preceding the current frame by two frames.

A flow of the menu process executed in the game apparatus 1 will bedescribed next by using FIG. 11 to FIG. 18. FIG. 11 and FIG. 12 areflowcharts showing flows of the menu process executed in the gameapparatus 1. When the power of the game apparatus 1 is turned on, theCPU 31 of the game apparatus 1 performs a start-up program stored in aboot ROM not shown, and each unit of the main memory 32 and the like isinitialized. Then, the menu program stored in the preset data memory 35is loaded into the main memory 32, and execution of the menu program isstarted.

First, in step S1, initialization process for data to be used in thefollowing process is executed. Specifically, first, contents (in thepresent embodiment, the content icons 101) is generated and arranged ina virtual space (in the present embodiment, the content area 102allocated in the virtual space) (refer to FIG. 13). Then, a virtualcamera is arranged at a position where a predetermined area of one partof the contents is displayed, and an area (hereinafter, display area)imaged by the virtual camera is displayed on the screen. In the presentembodiment, when the scroll operation as described above is conduct,scrolling of the contents is achieved by conducting a slide movement ofthe virtual camera (i.e., display area) on the contents in accordancewith the type of operation. In the following, an area imaged by thevirtual camera is referred to as the display area. Note that, when thevirtual camera is fixed and the scroll operation as described above isconducted, the contents may be move within the virtual space inaccordance with the type of operation.

Note that, the method for displaying the content and the method of thescroll process described above are merely examples and the presentinvention is not limited thereto, and any processing method may be usedas long as displaying and scrolling of the contents can be conducted.

Subsequently, the menu process proceeds by having a process loop ofsteps S2 to S27 repeated in every single frame.

Next, at step S2, the operation data 328 is acquired. Then, at step S3,the acquire operation data 328 is referenced, and whether or not a touchinput is performed to the touch panel 13 is determined. As a result, ifit is determined that a touch input is conducted (YES at step S3), acoordinate value of the input is acquired and whether or not acontinuous touch input is performed is determined at the next step S4.This is determined from whether or not some data is set in the lastlyinputted coordinates data 329. As a result of the determination, if itis determined that a continuous touch input is not performed (NO at stepS4), this means an operation categorized as the so-called touch-on isconducted. In this case, first, at step S5, it is determined whether ornot an inertia representation is being conducted; that is, determinedwhether or not it is in a state in which the inertia scrolling by theflick operation as described above is still continuing. As a result, ifit is determined that the inertia representation is being conducted (YESat step S5), a process of cancelling the inertia representation isexecuted at step S6. On the other hand, if it is determined that theinertia representation is not being conducted (NO at step S5), theprocess at step S6 is skipped.

Next, at step S7, a process to be conducted upon the touch-on isexecuted. In this process, a predetermined process in accordance withthe input coordinates described above is executed as appropriate. Forexample, when the content icons 101 are touched-on, a process fordisplaying a description of an application corresponding to the contenticons 101, or the like is executed. Then, the process is advanced tostep S14, which is described later.

On the other hand, as a result of the determination at step S4 describedabove, if it is determined that a continuous touch input is conducted(YES at step S4), the possibility is either a state in which anidentical position is continuously being touched, or a drag operation(scroll operation) is being conducted. In such case, next, at step S8,whether or not an end of the contents has been reached is determined forthe object displayed in the screen. Thus, it is determined whether ornot an end of the contents is within a predetermined position of thedisplay area. For example, with regard to the above described example inFIG. 6, it is determined whether or not (the left side of) the contenticon 101 a has reached a position having a predetermined margin from theleft end of the display area. As a result, if it is determined that anend of the contents has not been reached (NO at step S8), the type ofoperation is distinguished at step S10, and various processes based onthe type of operation are performed as appropriate. For example, if thetype of operation is a drag operation in a horizontal direction, thecontent area 102 (content icon group) is scrolled to the horizontaldirection in accordance with an amount of change and change direction ofthe input coordinates (more precisely, scrolling of the content area 102is achieved by moving the display area described above in accordancewith the amount of change and change direction). Then, the process isadvanced to step S13, which is described later.

Note that, with regard to the method of determining whether or not anend of the contents has been reached, the processing method describedabove is merely one example and the present invention is not limitthereto, and any processing method may be used as long as reaching at anend of the contents can be distinguished.

On the other hand, as a result of the determination at step S8, if it isdetermined that an end of the contents is included in the display area(YES at step S8), next, at step S9, the type of operation is distinguishbased on the operation data 328, and it is determined whether or not ascroll operation exceeding the end of the contents is performed. Forexample, with regard to the above described example in FIG. 6, it isdetermined whether a drag operation to the right direction (a dragoperation to a direction opposite of the end, a scroll operation so asto further move an end portion in the screen) is conducted. As a result,if a scroll operation exceeding the end of the contents is not performed(NO at step S9), the process at step S10 described above is executed.Thus, a process in accordance with the type of operation is conducted asappropriate. For example, if a drag operation to the left direction isperformed in a state of FIG. 6 described above, a process of scrollingthe contents in accordance with the drag operation is executed. Then,the process is advanced to step S13, which is described later.

On the other hand, as a result of the determination at step S9 describedabove, if it is determined that a scroll operation exceeding the end ofthe contents is performed (YES at step S9), a scroll limitrepresentation process is executed at step S12. FIG. 14 is a flowchartshowing details of the scroll limit representation process indicated atstep S12 described above. In FIG. 14, first, at step S41, it isdetermined whether or not the scroll limit representation is beingexecuted, by referring to the scroll limit representation flag 326. As aresult, if it is determined that the scroll limit representation isbeing conducted (YES at step S1), the process is advanced to step S46,which is described later.

On the other hand, if it is determined that the scroll limitrepresentation is not being conducted (NO at step S41), at the next stepS42, the notification object data 324 is referenced and the notificationobject 121 as described above is generated. Next, at step S43, anarrangement position of the notification object 121 in the virtual spaceis determined. Here, as shown in FIG. 15, a position adjacent to thedisplay area and to an end of the contents is determined as thearrangement position. Furthermore, the transparency of the notificationobject 121 is also set as appropriate. Alternatively, for example, thearrangement position along Y axis may be changed in accordance with thetouch position. For example, when an upper part of the screen istouched, a Y axis coordinate of the center of the notification object121 may be positioned so as to match a Y axis coordinate of the touchposition.

Next, at step S44, the notification object 121 is arranged at thearrangement position in the virtual space determined above. Furthermore,at step S45, the scroll limit representation flag 326 is set to be ON.

Next, at step S46, the notification object 121 is moved in thehorizontal direction as appropriate, in accordance with the type of theoperation. For example, the input coordinates included in the operationdata 328 and the lastly inputted coordinates data 329 are referenced,and an amount of change of the input coordinates (touch position) andthe direction of the change are calculated. Then, the notificationobject 121 is moved as appropriate in accordance with the calculatedamount of change and direction.

Next, at step S47, the transparency of the notification object ischanged in accordance with a distance from an end of the display area tothe end of the notification object. For example, as shown in FIG. 16 andFIG. 17, the transparency is changed so as to be higher as the distancefrom the screen end becomes smaller, and the transparency is changed soas to be lower as the distance from the screen end becomes larger.

With this, the scroll limit representation process ends.

Returning to FIG. 11, next to the scroll limit representation at stepS12, at step S13, the lastly inputted coordinates data 329 is set.Specifically, first, a content of the lastly inputted coordinates data329 is stored in the main memory 32 as the second-from-lastly inputtedcoordinates data 330. Furthermore, the input coordinates of a touchposition included in the operation data acquired at step S2 describedabove is stored in the main memory 32 as the lastly inputted coordinatesdata 329. Next, at step S14, a display process is conducted. Morespecifically, an image reflecting the above described process isgenerated, and a process of displaying the image on the lower LCD 12 isexecuted. Then, the process returns to the above described step S2, andthe process is repeated.

Described next is the process conducted when it is determined, as aresult of the determination at step S3 described above, that a touchinput is not performed (NO at step S3). In this case, first, at step S15in FIG. 12, it is determined whether or not the current operation stateis a touch-off. Specifically, the lastly inputted coordinates data 329is referenced, and if some data is stored therein, the current operationstate is determined as a touch-off, and if the lastly inputtedcoordinates data 329 is empty, the current operation state is determinedas not being a touch-off (thus a state of not being touched has beencontinuing). As a result of the determination, if the current operationstate is determined as a touch-off (YES at step S15), next, at step S16,it is determined whether or not the touch-off is one with inertia due toa flick operation as described above. This is determined from whether ornot the amount of change of input coordinates, which is indicated fromthe lastly inputted coordinates data 329 and the second-from-lastlyinputted coordinates data 330, is equal to or larger than apredetermined value. If the amount of change is at a certain degree, itis determined that a flick operation as described above is conducted andthat the touch-off with inertia is generated.

As a result of the determination at step S16, if it is determined thatthe touch-off with inertia is performed (YES at step S16), next, at stepS22, an inertia touch-off process is executed. This process is a processfor conducting the inertia representation as described above.

FIG. 18 is a flowchart showing details of the inertia touch-off processindicated at step S22 described above. In FIG. 15, first, at step S61,it is determined whether or not the current contents end is within thedisplay area, that is, whether or not it is in a state of reaching anend of the contents. As a result of the determination, if it isdetermined that an end of the contents has not been reached yet (NO atstep S61), at step S62, various parameters for conducting the inertiascrolling as described above are calculated. For example, an amount ofscrolling, a velocity of scrolling, a duration of scrolling, and thelike are calculated in accordance with the amount of change of inputcoordinates indicated from the lastly inputted coordinates data 329 andthe second-from-lastly inputted coordinates data 330. Then, at step S64,the calculated parameters are stored in the main memory 32 as theinertia representation data 325.

On the other hand, as a result of the determination at step S61, if itis determined that an end of the contents has been reached (YES at stepS61), at step S63, various parameters for conducting the scroll limitrepresentation as described above are calculated. Thus, the arrangementposition and the like of the notification object 121 as described aboveare calculated. Furthermore, an amount of movement, velocity of motion,duration of motion, and the like are calculated for the notificationobject 121, in accordance with the amount of change of the inputcoordinates indicated by the lastly inputted coordinates data 329 andthe second-from-lastly inputted coordinates data 330. Which means,various parameters necessary for conducting the scroll limitrepresentation with inertia force are calculated. Then, the calculatedparameters are stored as the inertia representation data 325 at step S64described above.

Next, at step S65, the inertia representation flag 327 is set to be ON.At the following step S66, the inertia representation is initiated basedon the inertia representation data 325. As a result, the above describedinertia scrolling will be displayed if an end of the contents has notbeen reached when the touch-off caused by the flick operation isperformed. Furthermore, if the touch-off caused by the flick operationis performed at a state of reaching an end of the contents, the abovedescribed scroll limit representation based on inertia force will bedisplayed, even in a state where the user is not touching the touchpanel 13. With this, the inertia touch-off process ends.

Returning to FIG. 12, when the process at step S22 ends, the process isadvanced to step S21, which is described later.

On the other hand, as a result of the determination at step S16described above, if it is determined that the touch-off with inertia isnot conducted (i.e., a normal touch-off without the flick operation isperformed) (NO at step S16); next, at step S17, it is determined whetheror not the scroll limit representation is being conducted by referringto the scroll limit representation flag 326. As a result, if it isdetermined that the scroll limit representation is being conducted (YESat step S17), this means the touch-off is conducted in a state where thenotification object 121 is displayed as shown in FIG. 8 and the likedescribed above. Therefore, at step S18, resetting of the scroll limitrepresentation is conducted. Thus, a process for withdrawing thenotification object 121 in the screen end and erasing the notificationobject 12 is executed. Next, at step S19, the scroll limitrepresentation flag 326 is set to be OFF.

On the other hand, as a result of the determination at step S17described above, if it is determined that the scroll limitrepresentation is not being conducted (NO at step S17), the processes atsteps S18 and S19 described above are skipped.

Next, at step S20, various processes to be conducted upon touch-off areexecuted. For example, if a touch-off is conducted in a state where acontent icon 101 has been touched (i.e., if a tap operation is performedon the content icon 101), a process and the like for starting up anapplication corresponding to the content icon 101 that has been touchedis executed. Note that, when any application starts up, the menu processstops for a moment but restarts when the application ends.

Next, at step S21, associated with the touch-off operation, the lastlyinputted coordinates data 329 and the second-from-lastly inputtedcoordinates data 330 are cleared. Then, the process is advanced to stepS14, which is described above.

Described next is the process conducted when it is determined as notbeing a touch-off as a result of the determination at step S15 describedabove (NO at step S15). In this case, it can be assumed that a statewhere the user is not touching the touch panel is continuing. In suchcase, first, at step S23, the inertia representation flag 327 isreferenced, and it is determined whether or not the inertiarepresentation is being conducted. As a result, if it is determined thatthe inertia representation is not being conducted (NO at step S23), theprocess is advanced to step S27, which is described later.

On the other hand, if it is determined that the inertia representationis being conducted (YES at step S23), next, at step S24, the process ofthe inertia representation based on the inertia representation data 325is continued.

Next, at step S25, whether or not an ending condition of the inertiarepresentation is satisfied is determined. For example, depending onwhether or not the inertia scrolling has reached an amount indicated bythe inertia representation data 325, whether or not the inertiarepresentation should be ended is determined. In addition, the endingcondition of the inertia representation is determined to be satisfiedalso when an end the contents has been reached during the inertiascrolling. As a result of the determination of step S25, if it isdetermined that the ending condition of the inertia representation isnot satisfied (NO at step S25), the process is advanced to step S27,which is described later. On the other hand, if it is determined thatthe ending condition of the inertia representation is satisfied (YES atstep S25), at step S26, the inertia representation flag 327 is set to beOFF.

Next, at step S27, various processes for those other than the inertiarepresentation described above are performed as appropriate.Descriptions of these processes are omitted since they are not directlyrelated to the present embodiment. Then, the process is advanced to stepS14 described above. This concludes the descriptions of the menu processof the present embodiment.

As described above, in the present embodiment, when an end of thecontents is within the display area and when a scroll operation isperformed in a situation where further scroll operation is unnecessary,the notification object 121 emerges and moves in accordance with thescroll operation. This allows the user to intuitively understand thatthe contents have arrived to an end, without the need of narrowing thearea in which the contents are displayed.

Note that, in the embodiment described above, used as the example forthe notification object 121 is a ease where the size of the notificationobject 121 is fixed. Alternatively, the size of the notification objectmay be changed in accordance with the distance from the screen end. Forexample, as shown in FIG. 19 and FIG. 20, the size of the notificationobject 121 may be enlarged as the distance from the screen end becomeslarger.

Furthermore, it is not necessarily needed to change the transparency andthe size of the notification object 121, and the scroll limitrepresentation process as described above may be conducted by having aconstant transparency and size of the notification object 121.

Furthermore, in the embodiment described above, the scrolling stops atthe time point when reaching an end of the contents during inertiascrolling. Other than stopping, the scroll limit representation asdescribed above may be conducted in accordance with remaining inertiaforce when reaching an end of the contents. More specifically, thenotification object 121 may emerge and move in accordance with remaininginertia force when reaching an end of the contents.

Furthermore, in the embodiment described above, described mainly as anexample is an operation on a menu screen of a hand-held game apparatuscapable of touch operation. However, the applicable apparatus of thepresent invention is not limit thereto, and the present invention isalso applicable when scrolling contents by conducting the drag operationas described above by using a pointing device on various informationprocessing terminals such as a stationary game apparatus, a personalcomputer, an electronic book reader, and the like. Other than the touchpanel described above, the pointing device may be, for example: a mousecapable of pointing an arbitrary position on a screen, a tablet which iswithout a display screen and which is for instructing an arbitraryposition on an operation surface; and a pointing device that calculatescoordinates which are on a display screen and which correspond to apointed position instructed on a display screen, the coordinates beingcalculated by using a position of the display screen and a marker withinan image taken by pointing a device in a direction of the displayscreen, the device including imaging means for remotely imaging thedisplay screen, markers arranged in the periphery of the display screen,and the like.

Furthermore, with regard to the applications and the like that can beused, as described above, various applications such as an electronicdocument viewer, an interne browser, and the like for browsing whilescrolling contents that cannot be displayed on a single screen can beused. Alternatively, the present invention is applicable to a generalsituation where a list of some information, for example, an item listand the like in a game process, is displayed and where it is necessaryto perform a scroll operation.

Furthermore, in the embodiment described above, horizontal scrolling isused as an example, however, the scrolling direction is not limitthereto, and the present invention is also applicable to verticalscrolling.

Furthermore, in the embodiment described above, as an example of adevice for detecting a position pointed by a player in an operation areawhen conducting the scroll operation, the touch panel is used; however,a so-called pointing device which allows the player to instruct aposition within a predetermined area may be used including examples suchas: a mouse capable of pointing an arbitrary position on a screen, atablet which is without a display screen and which is for instructing anarbitrary position on an operation surface; and a pointing device thatcalculates coordinates which are on a display screen and whichcorrespond to a pointed position instructed on a display screen, thecoordinates being calculated by using a position of the display screenand a marker within an image taken by pointing a device in a directionof the display screen, the device including imaging means for remotelyimaging the display screen, markers arranged in the periphery of thedisplay screen, and the like. Furthermore, instead of the pointingdevice, present invention is also applicable when conducting thescrolling as described above by an operation using a button such as, forexample, a cross key, a cursor key, and the like. When such an operationusing a button is conducted, for example, when a scroll operation isperformed by holding down the left button of a cross key and when theleft button is continuously held down after reaching an end of thecontents, the scroll limit representation as described above will beconducted.

Furthermore, with regard to the notification object 121, in the exampledescribed above, the notification object 121 is initially arrangedoutside the display area as shown in FIG. 15, and then moved in thedisplay area. As another example, the notification object 121 may beinitially arranged in the virtual space at infinite distance, and then ascroll limit representation may be conducted so as to move thenotification object toward the near side of the screen in accordancewith the scroll operation.

Furthermore, in the embodiment described above, a case has beendescribed where a series of processes for conducting the scroll limitrepresentation in accordance with the scroll operation are executed on asingle apparatus (the game apparatus 1). However, in another embodiment,the series of processes may be executed on an information processingsystem including a plurality of information processing apparatuses. Forexample, in an information processing system which includes a terminalside apparatus and a server side apparatus that is capable ofcommunicating with the terminal side apparatus via a network, one partof the processes among the series of processes may be executed on theserver side apparatus. Further, in an information processing systemwhich includes a terminal side apparatus and a server side apparatusthat is capable of communicating with the terminal side apparatus via anetwork, main processes of the series of processes may be executed onthe server side apparatus, and one part of the processes may be executedon the terminal side apparatus. Still further, in the informationprocessing system described above, the system on the server side may beconfigured with a plurality of information processing apparatuses, andprocesses to be executed on the server side may be divided to beexecuted by the plurality of information processing apparatuses.

While the invention has been described in detail, the foregoingdescription is in all aspects illustrative and not restrictive. It isunderstood that numerous other modifications and variations can bedevised without departing from the scope of the invention.

What is claimed is:
 1. A handheld portable information processingapparatus, comprising at least one processor, the at least one processorcontrolling the apparatus to: generate a display having a plurality ofselection objects displayed as a list and that are selectable based oninput made to the display, the list having at least a first endselection object; move the plurality of selection objects when an inputoperation is made to the display, the plurality of selection objectsmoving such that the plurality of selection objects in the displayedlist scroll in a direction opposite to a direction of the inputoperation; detect, as the plurality of selection objects move, when thefirst end selection object is displayed; and generate, when the firstend selection object is detected as being displayed, a semi-transparentnotification object for display, indicative of the displayed listreaching an end of the list, that emerges from an edge of the displayand moves in a direction corresponding to the direction of the inputoperation.
 2. The information processing apparatus of claim 1, whereinthe semi-transparent notification object extends in a first directioncorrespond to the direction of the input operation, and then retracts ina second direction corresponding to a direction opposite of thedirection of the input operation.
 3. The information processingapparatus of claim 1, wherein the semi-transparent notification objectfirst increases in size in a direction corresponding to the direction ofthe input operation, and then decreases in size in a direction oppositeto the direction of the input operation.
 4. The information processingapparatus of claim 1, wherein the semi-transparent notification objectis displayed while the input operation is being made to the display andthen begins disappearing from display when the input operation is nolonger made to the display.
 5. The information processing apparatus ofclaim 1, wherein the plurality of selection objects move when a flickoperation is performed on the display.
 6. The information processingapparatus of claim 5, wherein the plurality of selection objects scrollfor a period of time, after a touch-off from the flick operation, basedon an inertia force corresponding to a strength of the flick operation.7. The information processing apparatus of claim 6, wherein thesemi-transparent notification object emerges and moves based on theinertia force caused by the flick operation.
 8. The informationprocessing apparatus of claim 1, wherein the semi-transparentnotification object increases in size in first and second directions asthe semi-transparent notification object emerges from the edge of thedisplay and moves in the direction corresponding to the direction of theinput operation.
 9. The information processing apparatus of claim 1,wherein a transparency of the semi-transparent notification objectchanges so as to be higher as a distance from the edge of the displaybecomes smaller, and the transparency of the semi-transparentnotification object changes so as to be lower as the distance from theedge of the display becomes larger.
 10. The information processingapparatus of claim 1, wherein the semi-transparent notification objectbecomes more transparent when the semi-transparent notification objectis closer to the edge of the display, and becomes less transparent whenthe semi-transparent notification object is farther from the edge of thedisplay.
 11. The information processing apparatus of claim 1, whereinthe semi-transparent notification object extends in a first direction,corresponding to the direction of the input operation, while becomingless transparent, and then retracts in a second direction, correspondingto a direction opposite of the direction of the input operation, whilebecoming more transparent.
 12. The information processing apparatus ofclaim 1, wherein the at least one processor further controls theapparatus to: calculate an amount of change in input coordinates of theinput operation; calculate a direction of the change of the inputcoordinates; and move the semi-transparent notification object based onthe calculated amount of change and the calculated direction of thechange.
 13. A non-transitory computer-readable storage medium havingstored thereon a program executed by a computer of an informationprocessing apparatus, the program causing the computer to provideexecution comprising: generate a display having a plurality of selectionobjects displayed as a list and that are selectable based on input madeto the display, the list having at least a first end selection object;move the plurality of selection objects when an input operation is madeto the display, the plurality of selection objects moving such that theplurality of selection objects in the displayed list scroll in adirection opposite to a direction of the input operation; detect, as theplurality of selection objects move, when the first end selection objectis displayed; and generate, when the first end selection object isdetected as being displayed, a semi-transparent notification object fordisplay, indicative of the displayed list reaching an end of the list,that emerges from an edge of the display and moves in a directioncorresponding to the direction of the input operation.
 14. Thenon-transitory computer-readable storage medium of claim 13, wherein thesemi-transparent notification object extends in a first directioncorrespond to the direction of the input operation, and then retracts ina second direction corresponding to a direction opposite of thedirection of the input operation.
 15. The non-transitorycomputer-readable storage medium of claim 13, wherein the plurality ofselection objects move when a flick operation is performed on thedisplay.
 16. The non-transitory computer-readable storage medium ofclaim 15, wherein the plurality of selection objects scroll for a periodof time, after a touch-off from the flick operation, based on an inertiaforce corresponding to a strength of the flick operation.
 17. Thenon-transitory computer-readable storage medium of claim 16, wherein thesemi-transparent notification object emerges and moves based on theinertia force caused by the flick operation.
 18. A method for generatinga display, comprising: generating a display having a plurality ofselection objects displayed as a list and that are selectable based oninput made to the display, the list having at least a first endselection object; moving the plurality of selection objects when aninput operation is made to the display, the plurality of selectionobjects moving such that the plurality of selection objects in thedisplayed list scroll in a direction opposite to a direction of theinput operation; detecting, as the plurality of selection objects move,when the first end selection object is displayed; and generating, whenthe first end selection object is detected as being displayed, asemi-transparent notification object for display, indicative of thedisplayed list reaching an end of the list, that emerges from an edge ofthe display and moves in a direction corresponding to the direction ofthe input operation.
 19. The method of claim 18, wherein the pluralityof selection objects move when a flick operation is performed on thedisplay.
 20. The method of claim 19, wherein the plurality of selectionobjects scroll for a period of time, after a touch-off from the flickoperation, based on an inertia force corresponding to a strength of theflick operation.
 21. The method of claim 20, wherein the set,semi-transparent notification object emerges and moves based on theinertia force caused by the flick operation.
 22. A system, comprising: aprocessing system having at least one processor, the processing systemconfigured to: generate a display having a plurality of selectionobjects displayed as a list and that are selectable based on input madeto the display, the list having at least a first end selection object;move the plurality of selection objects when an input operation is madeto the display, the plurality of selection objects moving such that theplurality of selection objects in the displayed list scroll in adirection opposite to a direction of the input operation; detect, as theplurality of selection objects move, when the first end selection objectis displayed; and generate, when the first end selection object isdetected as being displayed, a semi-transparent notification object fordisplay, indicative of the displayed list reaching an end of the list,that emerges from an edge of the display and moves in a directioncorresponding to the direction of the input operation.